package com.t.bricks.bussiness.db.dao.msgmanage;

import com.t.bricks.bussiness.db.dao.common.BaseDao;
import com.t.bricks.model.MsgEmity;

public interface MsgManageDao<T> extends BaseDao<T> {

	/**
	 * 添加发送失败次数
	 * @param iId 记录编号
	 * @param iType 发送类型(1:邮箱;2:短信;3:微信;4:推送;5:系统消息)
	 * @param iValue 要添加的值(为空则为1)
	 * @return
	 */
	MsgEmity addError(Long iId, Integer iType, Integer iValue);
	
	/**
	 * 发送成功
	 * @param iId 记录编号
	 * @param iType 发送类型(1:邮箱;2:短信;3:微信;4:推送;5:系统消息)
	 * @return
	 */
	MsgEmity succeed(Long iId, Integer iType);
	
	/**
	 * 查询待发送的数据
	 * @param iType 发送类型(0:全部;1:邮箱;2:短信;3:微信;4:推送;5:系统消息)
	 * @param iErrorCount 错误次数限制
	 * @return List<MsgManage>
	 */
	MsgEmity findByType(Integer iType, Integer iErrorCount);

}
